Distributed Lightmap Rendering

Depending on the hardware configuration in use, lightmap rendering can be performed either locally or on a networked set of computers. Distributing the rendering to a networked set of computers will significantly reduce the time required for rendering lightmaps.

The lightmap rendering mode is selected in the Lighting Tab in the Shaper sidebar. The Tools box is displayed when the selected Lighting Type is set to Lightmap.

Start Local Rendering is used to render the lightmaps locally. Local lightmap rendering is based on the use of the processor and graphic cards of the computer on which Patchwork 3D Design is executed.

Start Distributed Rendering is used to render the lightmaps on the rendering machines running Patchwork Lightmap Render.

Patchwork Lightmap Render

Installing Patchwork Lightmap Render

Install the Patchwork Lightmap Render software on the computers you wish to use for distributed rendering.

This application must be run manually in order to provide the distributed rendering service. If you restart Windows on one of the computers functioning with Patchwork Lightmap Render, you must also restart the Patchwork Lightmap Render application.

You can add this application to the list of programs that will run at the start up of Windows. To do so, in Windows 7, drag and drop the application into the following location: Start > All Programs > Startup.

Figure 106 : Drag and drop the application into Start > All Programs > Startup.

If you have installed Patchwork Lightmap Render on computers that are listening for a render task, but which aren't found by Patchwork 3D Design in the unit discovery window, verify that no network agents are set to block discovery broadcast packets.
If you do not have access to the network configuration in order to disable broadcast filtering, you can manually enter the name or the IP address of the Patchwork Lightmap Render machines.

How Patchwork Lightmap Render Machines Work

Should the Patchwork Lightmap Render application crash, it will restart itself automatically.

A Patchwork Lightmap Render machine can only participate in a single rendering session at a time. If another instance of Patchwork 3D Design sends a request for the computer's availability while it is already participating in a render session, the Patchwork Lightmap Render machine will send back the status "Busy." Patchwork 3D Design will continue to attempt to open a session at regular intervals until a session is opened or the rendering is completed on the available machines.

Distributed Lightmap Rendering Mode in Patchwork 3D Design

The distributed lightmap rendering mode uses resources from several computers running Patchwork Lightmap Render. The Patchwork Lightmap Render software must be set up and run on the computers you want to use. The same applies to the computer on which Patchwork 3D Design is installed if you wish to use it for distributed rendering.

Setting up the Distributed Rendering

The port used for finding the Patchwork Lightmap Render computers is specified in the Settings. Browse to File > Settings > Lighting tab > Distributed lightmap rendering box.

The default UDP port for finding Lightmap Render Units is 4242. Enter another value if required.

Clicking on Start Distributed Rendering displays the Distributed lightmap rendering configuration window, dedicated to management of Patchwork Lightmap Render machines.

Figure 107 : Distributed Lightmap Rendering Configuration window.

If your network infrastructure allows it, Patchwork Lightmap Render machines are automatically found by broadcast. They appear directly in the list of known Patchwork Lightmap Render machines.

The following data is displayed for each of the known Patchwork Lightmap Render machines:

  • The name of the host computer on which the Patchwork Lightmap Render software is running,
  • The IP address of this computer,
  • The status of the Patchwork Lightmap Render machine – the various statuses are detailed thereafter,
  • A checkbox specifying whether a Patchwork Lightmap Render machine is selected for the rendering.

The various statuses of the Patchwork Lightmap Render machines are the following:

Status Description
Available The computer is ready to perform a rendering.
Busy The computer is being used by the Patchwork 3D Design software on the specified computer.
Disconnected: connection denied The Patchwork Lightmap Render software is not currently running on the computer.
Disconnected: host not found The host computer cannot be found on the network – the rendering machine might not be turned on.
Disconnected: incompatible protocol version The version of the Patchwork Lightmap Render software is not compatible with the Patchwork 3D Design version used. Patchwork Lightmap Render must be updated.

Some network infrastructures do not allow automated discovery of Patchwork Lightmap Render machines. In that case, the units need to be added to the list manually. In order to do this, click on Add unit. Next, enter the name of the computer you want to use. The computer is now displayed in the list. The asterisk added to the name of the computer specifies that this machine has been added manually. The Patchwork Lightmap Render software must already be installed on any computer you wish to add manually as a Patchwork Lightmap Render machine.

The list of available machines is updated with the Refresh button.

The buttons Use all and Use none allow the user to select all or none of the units, respectively.

To delete a machine added manually from the list, select it and click on Remove unit.

Exiting the Distributed Lightmap Rendering Configuration window is possible at any time by clicking the Cancel button. The list of manually added machines and their state of use during the latest rendering are saved on exit.

Starting a Distributed Rendering

Once the Patchwork Lightmap Render machines have been set up, start the lightmap rendering by clicking the Ok button.

At the start of a distributed rendering, allowing the connection with the Patchwork Lightmap Render machines through the firewall of your Windows OS may be required.

The lightmap rendering progression window displays a progress bar, the estimated remaining time, the elapsed time since the beginning of the rendering, the count of surfaces for which the rendering has been completed, and the status of the rendering.

Figure 108 : Lightmap rendering progress monitoring window.

The status of each rendering machine is also displayed. Several statuses are possible:

Status Description
Transferring data Transferring data to the rendering machine.
Initialization Initialization of the rendering machine.
Computing Lightmap rendering in progress.

The window closes automatically when the rendering is over if the Close this window when finished checkbox is checked.

Stopping Distributed Rendering

The rendering in progress can be stopped at any time by clicking the Stop button. A window opens to offer you the choice of how to proceed:

Option Description
Continue Restart the calculation of the illumination for the remaining surfaces. Data may be transferred to the rendering machine.
Keep Abandon the calculation for the remaining surfaces, but display the illumination that has already been calculated.
Discard Abandon the calculation for the remaining surfaces and do not display the illumination that has already been calculated. This option will restore the previous illumination.

Figure 109 : Three options are available when the rendering has been stopped: Continue, Keep, and Discard.

During the rendering, the model’s surfaces whose lightmap is being rendered are displayed in white and in wireframe mode. Surfaces whose lightmap has not been rendered yet are displayed in red. Once rendered, a lightmap is displayed on the model.

Resources Consumed

A Patchwork Lightmap Render machine listening for requests for rendering consumes no system resources.

During a render session, a rendering machine calculates lightmaps from the geometric information concerning all of the visible surfaces. In order to optimize the render speed, all of the surfaces are stored in the GPU. Then, the lightmaps are calculated one by one at Patchwork 3D Design's request.

The resources of a rendering machine that can be used by Patchwork 3D Design are only limited by the hardware configuration of the machine.

For a standard Patchwork 3D Design model, containing between 3 and 5 million triangles for 300-500 surfaces, the GPU consumption is about 2 GB. The consumption of RAM resources is approximately identical to the GPU consumption.

Figure 110 : Network events between Patchwork 3D Design and a Patchwork Lightmap Render machine

For a standard Patchwork 3D Design model, the following illustration represents a typical resource consumption:

Behavior Following Loss of Connection

Loss of Network Connection

Patchwork 3D Design and the Patchwork Lightmap Render machines will automatically detect the loss of a network connection.

Patchwork 3D Design will redistribute the render calculations left to perform to the rendering machines that are still connected. Patchwork 3D Design will continue to attempt to reconnect with the rendering machines that were disconnected.

If no machines are connected, Patchwork 3D Design will continue to try to reconnect with the Patchwork Lightmap Render machines at regular intervals. During this time, the rendering is paused. You may choose to cancel the rendering at this point. You may either save or dismiss the results for the surfaces for which lighting has already been calculated.

A rendering machine that has lost its connection to Patchwork 3D Design becomes available on the network. It will accept the first session request that it receives from an instance of Patchwork 3D Design looking for a machine running Patchwork Lightmap Render.

Patchwork 3D Design Crash

A crash of the Patchwork 3D Design application will break the connection with the Patchwork Lightmap Render machines.

A rendering machine that has lost its connection to Patchwork 3D Design becomes available on the network. It will accept the first session request that it receives from an instance of Patchwork 3D Design looking for a rendering machine.